home *** CD-ROM | disk | FTP | other *** search
- --------------------------------------------------------------------------------
- -- Weapon Swap
- -- Original Carnage Contest Weapon
- -- Script by DC, September 2010, www.UnrealSoftware.de
- --------------------------------------------------------------------------------
-
- -- Setup Tables
- if cc==nil then cc={} end
- cc.swap={}
-
- -- Load & Prepare Ressources
- cc.swap.gfx_wpn=loadgfx("weapons/rc.bmp") -- Weapon Image
- setmidhandle(cc.swap.gfx_wpn)
- cc.swap.gfx_icon=loadgfx("weapons/swap.png") -- Weapon Icon
- setmidhandle(cc.swap.gfx_icon)
- cc.swap.sfx_superteleport=loadsfx("teleport.wav") -- Weapon superteleport
-
- --------------------------------------------------------------------------------
- -- Weapon: Swap
- --------------------------------------------------------------------------------
-
- cc.swap.id=addweapon("cc.swap","Swap",cc.swap.gfx_icon,0) -- Add Weapon (0 uses)
-
- function cc.swap.draw() -- Draw
- if weapon_shots==0 then
- setblend(blend_alpha)
- setalpha(1)
- setcolor(255,255,255)
- drawinhand(cc.swap.gfx_wpn,7,0)
- -- HUD Positioning
- hudinfo("Click a player to swap positions!")
- hudpositioning(pos_invisible)
- end
- end
-
- function cc.swap.attack(attack) -- Attack
- if (weapon_shots<=0) and (weapon_position==1) then
- if collision(colplayer,weapon_x,weapon_y,0,1,0)>0 then
- if playercollision()>0 and playercollision()~=playercurrent() then
- -- Use weapon and allow to use another one afterwards (1)
- useweapon(1)
- weapon_shots=weapon_shots+1
- -- Get Position 1
- weapon_x=getplayerx(playercollision())
- weapon_y=getplayery(playercollision())
- -- Get Position 2
- oldx=getplayerx(0)
- oldy=getplayery(0)
- -- FX
- playsound(cc.swap.sfx_superteleport)
- for i=1,2,1 do
- if i==1 then
- x=oldx
- y=oldy+3
- else
- x=weapon_x
- y=weapon_y+3
- end
- particle(p_muzzle,x,y)
- particlesize(1,1)
- particlecolor(255,200,50)
- particlealpha(1.0)
- particlefadealpha(0.01)
- particle(p_muzzle,x,y)
- particlesize(1,3)
- particlecolor(255,200,50)
- particlealpha(1.0)
- particlefadealpha(0.02)
- particlerotation(0)
- for j=1,10,1 do
- particle(p_flare,x-10.0+math.random()*20.0,y+math.random()*10.0)
- particlesize(3.0,3.0)
- particlecolor(255,200,50)
- particlespeed(0,math.random(1,3)*-1.0)
- particlefadealpha(0.01)
- end
- end
- -- Swap Positions
- playerposition(0,weapon_x,weapon_y)
- playerposition(playercollision(),oldx,oldy)
- else
- weapon_position=0
- end
- else
- weapon_position=0
- end
- end
- end